package com.fjl.list.leetcode264;

/**
 * @Description
 * @Author: 01195
 * @Date: 2025/2/18 14:22
 */
public class FindUglyNumber {

    public static void main(String[] args) {
        System.out.println(nthUglyNumber(3));
    }

    // 给你一个整数 n ，请你找出并返回第 n 个 丑数 。
    // 丑数 就是质因子只包含 2、3 和 5 的正整数。
    public static int nthUglyNumber(int n) {
        if (n == 1) return 1;
        int uglyNumber = 1;
        for (int i = 2; i < Integer.MAX_VALUE; i++) {
            if (i % 2 == 0) {
                ++uglyNumber;
            } else if (i % 3 == 0) {
                ++uglyNumber;
            } else if (i % 5 == 0) {
                ++uglyNumber;
            }
            if (uglyNumber == n) {
                return i;
            }
        }
        return 0;
    }
}
